using System;
using UnityEngine;

namespace BitMango.Native
{
	public static class DummyExt
	{
		public static bool IsMusicPlaying()
		{
			return false;
		}

		public static string GetCurrentLocaleID()
		{
			return "KR";
		}

		public static string GetBundleVersion()
		{
			return "1.0";
		}

		public static string GetBundleIdentifier()
		{
			return "com.bitmango.platform";
		}

		public static string VendorIdentifier()
		{
			return DummyExt.AdvertiserIdentifier();
		}

		public static string AdvertiserIdentifier()
		{
			return "empty";
		}

		public static void ApplicationQuit()
		{
			Application.Quit();
		}

		public static Vector2 GetContentSize()
		{
			return new Vector2(0f, 0f);
		}

		public static Vector2 GetDeviceSize()
		{
			return new Vector2(0f, 0f);
		}

		public static bool CanOpenURL(string url)
		{
			return true;
		}

		public static void OpenURL(string url)
		{
		}

		public static void OpenStore(string appid)
		{
		}

		public static void OpenReviewPage(string appid)
		{
		}

		public static bool IsCloudAvailable()
		{
			return false;
		}

		public static bool SaveUserDataToCloud()
		{
			return false;
		}

		public static bool LoadUserDataFromCloud()
		{
			return false;
		}

		public static void SystemAlert(string title, string message, string positiveButton, string negativeButton, Action<bool> callback)
		{
			UnityEngine.Debug.LogError("DummyExt.SystemAlert Fail : Not Impl.");
		}

		public static void ShowWebPage(string url)
		{
			Application.OpenURL(url);
		}

		public static void ChoosePhotoAlbum(Action<Texture2D> callback)
		{
			UnityEngine.Debug.LogError("ChoosePhotoAlbum is not implemented here");
			Platform.SafeCallback<Texture2D>(callback, null);
		}

		public static bool HasCamera()
		{
			return true;
		}

		public static void ShowShare(string title, string message)
		{
		}

		public static void ShowShare(string title, string message, Action<bool> callback)
		{
		}

		public static void ShowShare(string title, string message, Texture2D texture, Action<bool> callback)
		{
		}

		public static void TakePhoto(int width, int height, string fileName, Action<string> callback)
		{
		}

		public static void GrantPermission(string permission, Action<int> callback)
		{
		}

		public static int HasPermission(string permission)
		{
			return 0;
		}

		public static void SelectAlbum(int width, int height, string fileName, Action<string> callback)
		{
		}

		public static void ShowAlert(string title, string message, string positiveButton, Action<bool> callback)
		{
		}

		public static void ShowAlert(string title, string message, string positiveButton, string negativeButton, Action<bool> callback)
		{
		}

		public static float GetUsedMemoryByMegabytes()
		{
			return 0f;
		}

		public static void InitWebReloadManager()
		{
		}

		public static float GetScreenDPI()
		{
			return Screen.dpi;
		}
	}
}
